Beiträge von Techmix

    Hallo Community,


    nach längerer Zeit lasse ich auch mal wieder was von mir hören ;) Und stoße mal direkt einen Teiletausch an :O
    Ich habe ja schon öfter hier im Forum Hardware getauscht, verschenkt und sogar geschenkt bekommen (!) und möchte eBay & Co sowie Bankensysteme außen vor lassen, deswegen biete ich vorhandende Teile für Teile an die mir fehlen!



    Jeder Tausch läuft immer gleich ab: Der Teiler (ich) versendet erst sein (mein vorhandendes) Teil auf eigene Kosten und der zu beteilende (jemand anderes) packt sein Teil (mein neues) in aller Ruhe ein – wartet ab bis sein ersehntes Teil ankommt – um es anschließend freudestrahlend (bitte zu mir) zu versenden.
    Habt ihr kein Teil für mich, könnt ihr auch gerne eines bestellen und es mir zusenden lassen – nur so am Rande… ;)



    Diesmal benötige ich SATA Festplatten da mir die Kapazitäten und die Kohle ausgehen und biete dafür funktionstüchtige Hardware an. Diesmal im Angebot:

    • 2x1GB DDR2-400 Riegel (hys72t12800hr-5-a) PC2-3200R ECC RAM
    • Original Intel Sockel 1366 Kühler vom i7 950
    • System 1 - Lame:
      Board: MSI K9N NeoV2 - Sockel AM2 – DDR2
      CPU: AMD Athlon 64 X2 5000 – 2x2.6Ghz
      RAM: 2GB - 2*1GB DDR2-667 – PC2-5400
      Kühler: Standart Kühler?! OHNE original Lüfter!! <- Lege einen 7cm Cooler Master Lüfter bei
    • System 2 - Hust:
      Board: Asus P5G41T-M SI – Sockel 775 – DDR3
      CPU: Core2Duo E7400 – 2x2.8Ghz
      Kühler: Fehlt!!
    • System 3 - Nice:
      Board: EVGA nForce 790i Ultra SLI - Sockel 775 - DDR3
      CPU: Core2Quad Q9550 – 4x2.83Ghz (OC bis 3400Mhz)
      Kühler: Fetter Xigmatek Kühler mit 12cm Radiator und 3 Heatpipes (Nur noch 3 Haltepins und eine Beule)
    • MSI R7770 GraKa – AMD Radeon HD-7770 – 1GB GDDR5

    Für die Systeme und die GraKa würde ich mir tatsächlich HDD-Kapazität wünschen – ich benötige UNBEDINGT Festplatten u.a. für mein Datengrab!!


    Also, wer braucht ein älteres AMD System incl. RAM z.B. für einen Fileserver oder so?
    Vielleicht darf es ein leicht stärkeres, aber Kühlerfreies Bundle sein??
    Oder ein relativ gutes Bundle aus hochwertigem MB mit 4 Kerner sowie fetten Kühler???
    Eine DX11 Grafikkarte gibt es auch zu holen ;)


    Mehrere Artikel können im “Paket“ erworben werden!
    Für andere Artikel würde auch etwas DDR3 RAM oder andere Dinge gehen, einfach anbieten.
    Anfragen auch über PN aber Angebote bitte öffentlich Posten!


    Und somit verabschiede ich mich,
    MfG – Techmix.

    Nabend,
    ich hätte schon ein Interesse an einer neuen Gui-Umgebung. Aber wie stellst du dir das Handling damit vor? Müsste ich dann selber mit Objekten arbeiten oder erledigst du das innerhalb deiner UDF, weil auf Objekte in AU3 hab ich kein Bock... Auch der GuiMsg Loop, könnten wir die Abfragen so abhandeln wie man es gewohnt ist oder kommt da ein anderes System zum Einsatz? (Das dann andere Befehle verwendet werden meine ich nicht, sollte klar sein) Auch OnEvent wäre wichtig, würdest du das ebenfalls integrieren?


    Wie immer, Fragen über Fragen :D
    Aber grundsätzlich wäre ich an einer alternativen GUI interessiert.


    Grüße!

    Hy, will mal eine Idee in die gekaperte Runde werfen. Welchen Durchmesser sollen deine Spulen denn haben, wenn nicht zu groß und der Litzenabstand stimmt könntest du dir einen Bolzen aus dem Baumarkt oder vom Schmied besorgen. Letzterer hat auch die Möglichkeit dir ein passendes Gewinde auf einen Rohbolzen zu schneiden. Da gibt es ja auch unterschiedliche Materialien wie Messing oder Alu.
    Darum dein Flachbandkabel ausrichten, irgendwie Fixieren und anschließend mit einem Zug löten...


    Vielleicht hilfts ja.

    Durch aktuelle Postings hier im Forum überwinde ich mich jetzt mal und eröffne eine theoretische Diskusionsrunde.



    Ende 2014 Anfang 2015 habe ich mir überlegt welcher Aufwand betrieben werden muss um einen AutoIt3-Compiler schreiben zu können – und ich weiß es gab bereits einige Versuche. Im Forum habe ich mir viele Beiträge zu diesem Thema durchgelesen und denke das ein Codeparser, welcher Au3-Code nach FreeBasic portiert, die einfachste Möglichkeit darstellt einen Compiler bereitzustellen.


    Daher habe ich etwas Theoretisches erarbeitet: Die Umwandlung von AutoIt3-Code zu echten Binären-Code, durch vorige Portierung zu FreeBasic-Code und dessen anschließende Kompilierung… Ta-Ta!! Im Klartext bedeutet das das der Codeparser in AutoIt3 geschrieben wird und die Stammbefehle in FreeBasic gehalten sind, verbunden durch einer Art von Grammatik welche beide Sprachen interpretiert.
    Wie gehabt ist alles nur theoretischer Natur und sollte nur der Durchführungsweise und Inspiration dienen. Seit über 9 Monaten komme ich überhaupt nichtmehr zum Programmieren, und es ist auch keinerlei Besserung in Sicht – Daher die Offenlegung meiner Projekt-Sichtung ;) Aber zur Diskusionsgrundlage ist das Thema durchaus geeignet und es werden bestimmt viele gute Ideen in diesem Thread einfließen.


    Warum ein Coderparser und keine echter Compiler?? Ein Codeparser soll Sprache 1 (AutoIt3) nach Sprache 2 (FreeBasic) auf Basis einer Grammatik portieren – Die Kompilierung erfolgt anschließend durch den FreeBasic-Compiler. Das wird die einfachste Möglichkeit darstellen AutoIt3 von seinem Interpreter lösen zu können OHNE Einsicht in den ursprünglichen AU3 Quellcode haben zu können (dieser ist ja unter Verschluss). Denn ohne diesen Quellcode ist es unmöglich einen “echten“ AutoIt3-Compiler zu schreiben, deswegen der Zwischenschritt Au3 nach FB zu parsen.



    Die Basis des Codeparser sind seine in FreeBasic geschriebenen und im Funktionsumfang 1:1 gehaltenen AutoIt-Keywords (incl. Macros) welche ein identisches Verhalten aufweisen müssen wie dessen Vorlagen, das sind unsere Stammbefehle. Sind alle Stammbefehle vollständig Funktionstüchtig werden die gesamten AutoIt3 Funktionen und UDF´s durch die Parserlogik zu FreeBasic-Code portiert und stellen somit die Ac3-Includes bereit, welche dann in unseren Au3-Scripten vom Parser zur Portierung verwendet werden. Es müssen also alle Funktionen die AutoIt3 bereitstellt bereits zu Ac3-Includes geparst worden sein, damit die ursprünglichen Includes in unseren Skripten durch die Ac3 Pendaten ersetzen werden, nach unserem geparsten Skript sollte der AutoIt-Code 1:1 in FreeBasic vorliegen und Kompiliert werden können – Theoretisch :D


    Hat man alle Stammbefehle ermitteln können, könnte man diese in jeder Sprache interpretieren und mit der gleichen Methode AutoIt3 komplett “Nachschreiben“ – Alles in AutoIt3 basiert auf Verkettung dieser Stammbefehle! “Spaßeshalber“ habe ich mir die Arbeit gemacht 505 Stammbefehle zu lokalisieren und für diese entsprechende FB-Header vorbereitet – Zur Übersichtsgewinnung des Arbeitsaufwandes. Ich habe alle Funktionen in den Headern deklariert und als Funktions-Dummys vorbereitet, den Rückgabe-Typ ermittelt, alle Übergabe-Parameter und dessen Typen berücksichtigt und sogar die Texte aus der Hilfedatei in die Funktionen eingefügt - damit jeder nachvollziehen kann was diese Funktion machen muss… Aber wie immer bei so einer großen Masse an anfallenden Funktionen hat sich wohl hier und da der Schlendrian eingeschlichen, außerdem dient es nur zur Verdeutlichung. Alles im Anhang einzusehen.



    Der Codeparser muss sehr individuell Aufgebaut sein, mit einer raffinierten Parserlogik damit auch unsauberer Code und unterschiedliche Programmierstile erfassbar sind. Außerdem ist ein ständiges Auge auf die Syntaxunterschiede beider Sprachen zu werfen, das kann durchaus sehr Tricky werden. Als ich die Stammbefehle lokalisierte bekam ich schon bedenken weil die Dialekte teils gravierende Unterschiede haben, welche der Parser später ja automatisch kompensieren muss. Dialektspezifisch ist beispielsweise in FreeBasic die Rückgabe einer Stuct oder Array nur durch einen ByRef Funktionsparameter möglich, in Au3 wird ein Array einfach am Funktionsende “Returned“ – das könnte recht einfach umgangen werden indem alle Befehle einfach den ersten Funktionsparameter als Returner verwenden. Aber dieses ist nur ein Beispiel von vielen, man sehe sich nur die Funktion “DllCall()“ an diese kann jeden denkbar möglichen Typen wiedergeben. Es ist also reichlich Hirnschmalz gefragt! Die Parserlogik interpretiert beide Sprachen basierend auf einer “Grammatik“ zu einem lauffähigen Code welcher anschießend kompiliert werden kann…



    Was denkt ihr was es alles zu Berücksichtigen gibt eine halbwegs “echte“ Compiler-Umgebung für unseren AutoIt3-Code erstellen zu können? Welche Innovationen erhofft ihr euch dadurch, welches Problem würde den Genickbruch eines solchen Vorhabens darstellen - abgesehen von dem immensen Arbeitsaufwand?? Alleine kann man so ein Projekt nicht stemmen, wenn sich aber eine kleine Gruppe findiger Programmierer auffindet die das unter sich klar machen – sehe ich durchaus eine realistische Möglichkeit den AutoIt3 Dev´s mal kräftig in den Poppes zu treten :D



    Pro:


    • Alle Compilerflags des FB-Compiler könnten auch manuell in unseren Scripten verwendet werden (aus “-arch < type >“ wird “#FreeBasicCompiler=-arch < type >“).
    • Das Threading aus FreeBasic könnte in Au3 Verwendung finden, es müsste nur über eine kleine UDF integriert werden.
    • Es könnte ein “Varianthebel“ eingebaut werden, damit eben der Typ Variant ausgehebelt werden kann, und somit alle Variablen Typisiert werden müssen.
    • Es könnten DLL´s aus Au3-Code erstellt werden.
    • Der Geschwindigkeitszuwachs sollte in Teilbereichen enorm ausfallen.
    • Das De-Kompilieren von Au3-Programmen sollte dank des geparsten Code´s auch kein Thema mehr sein.

    Contra:


    • Der Variant... Dieser ist unglaublich praktisch aber da Code nach FB portiert werden soll ist er auch kontraproduktiv. Es muss eine Möglichkeit gefunden werden mit diesem umzugehen…
    • Die Dialektinterpretation zwischen Au3 und FB könnte je nach Programmierstil kompliziert ausfallen.
    • Alle Stammbefehle müssen 1:1 mit deren Au3 Vorbildern kompitabel sein! Ebenso müssen die erstellten AutoIt3 Funktionen und UDF´s lauffähig sein. Das bedeutet einen riesen Aufwand…
    • Dialektspezifische Unterschiede beider Sprachen durch ausgefeilter Parserlogik kompensieren.

    Infos:


    AutoIt zu C
    Bleb AutoIt-Compiler
    Funktionssammlung AutoIt



    Ich freue mich auf eine rege Diskusion,
    Grüße von Techmix!

    Dateien

    • Ac3.rar

      (154,14 kB, 169 Mal heruntergeladen, zuletzt: )

    So ich konnte mir eine Funktion schreiben welche mir den Disketteninhalt auflistet und auf Wunsch auch entpackt. Dank des Hinweises von Bitnugger verwende ich das Konsolenprogramm UnAdf welches auf der Vorgeschlagenen AdfLib basiert. UnAdf befindet sich bei mir in @ScriptDir & "\UnAdf". Wie sich die Funktion bei Pfadangaben mit Leerzeichen verhällt ist ungetestet...


    Der Funktionsaufruf ist denkbar einfach lässt map den zweiten Parameter aus wird nur das Inhaltsverzeichniss ausgegeben.





    Vielen Dank nochmal für den Lösungsweg und
    Dicke Grüße :D

    Hy,
    auf das Total-Comander Addon war ich auch schon gestoßen und hatte auch schon bereits versucht dieses ohne TC anzusprechen, leider ohne Erfolg...


    Aber jetzt hat mich der Ehrgeiz gepackt und offensichtlich gibt es keine Codefetzen im Netz welche sich dem .adf Format widmen. Also werd ich weiterhin die Disketten mit dem Hexedior einsehen und im Netz stöbern. Das kann doch nicht so schwer sein ein Dateiformat aus den 80'ern zu knacken

    Hallo,
    ich fummel momentan wieder mit dem Amiga-Emulator (WinUAE) rum und habe hier eine Vorgehensweise welche ich mit AU3 gerne automatisieren würde. Und zwar wird am Amiga mit 880Kb Disketten (DD) gearbeitet welche auf dem MS-Dos Standart der 720KB Disks (MS-DOS 3.2) basieren sollen und als *.adf Dateien verfügbar sind. Diese Disketten kann ich manuell entweder innerhalb der Emulation über die Workbench kopieren oder ich nehme ADF-Opus. Jedenfalls muss ich so Diskette für Diskette einzeln mounten und alles händisch kopieren - was sehr Zeitintensiv ist.


    Ich dachte das ich einfach ein wenig im Netz stöbere und irgendein Plugin, ´ne DLL oder sonstwas finden kann womit ich z.B. über einen Consolenbefehl oder einen DLL-Call mir alle Disketten in entsprechende Ordner "entpacken" kann - aber ich finde nichts... OK, jetzt dachte ich mir das ich einen HEX-Editor nehme und einfach mal in den Datensalat nachschaue ob da nicht iwas wie ein Inhaltsverzeichniss (in Klartext :rofl: ) hinterlegt ist - aber auch Banane... Hab mir auch einen HEX-Editor für den Amiga geladen und bei einer Disk dessen erste Datei darin geöffnet und einfach die ersten Zeichenfolgen auf meinem Win Hex-Editor gesucht und auch gefunden, nur leider ohne Dateinamen. <- Update, kann jetzt Disknamen auslesen.


    Hat jemand Info´s für mich wie ich es anstellen könnte das ich mit eigenem Code Vollzugriff auf meine ADF´s habe? Ich müsste eigentlich nur das Inhaltsverzeichniss mit sowas wie "Sprungmarken" und Dateigrößen auslesen können und damit die enthaltenen Dateien auf Platte ablegen. Das war´s eigentlich schon... Und ich weiß das es auf´m Amiga einen haufen No-Dos Disketten gab - um diese geht es hier aber nicht.


    Grüsse von
    Techmix!


    [EDIT]
    Habe jetzt eine ADF erstellt und angehängt:
    Name: Testdisk
    Inhalt: Ordner Dir, Datei Dir.info (Größe 628), Datei Dir/Startup-Sequence (Größe 1274)
    Öffne ich diese jetzt als Hex kann ich an Position 6E1B1 den Diskettennamen auslesen (auch bei anderen Disks) und ich sehe auch den Ordernamen (6E5B1) und dessen .info (6E7B1) sowie die StartUp (6EDB1). Immerhin sind diese Funde bei anderen Disketten ähnlich, aber ich kann keine Kennzeichnug erkennen ob es sich um einen Ordner oder eine Datei handelt auch kann ich keine Größenangaben ausmachen. ...Ich hätte echt erwartet das auf einer Diskette soetwas wie eine "Inhaltsliste" hinterlegt ist :S


    Außerdem mir fiel auf, das wenn ich eine "entpackte" Datei aus einer ADF verändert abspeichere, kann sie vom Emulator nicht mehr geladen werden!! Ich habe schon bereits versucht eine Startup Datei zu schreiben die auch nichts anderes macht als alle eingelegten Disketten in Ordner zu kopieren - klappt nicht wegen der geänderten Kodierung (vermute ich)... Das wird interessant wenn ich an dem Punkt komme wo alle Dateien auf Platte geschrieben werden.

    Dateien

    • Testdisk.rar

      (21,89 kB, 156 Mal heruntergeladen, zuletzt: )

    Ist zwar Offtopic aber...
    Ich hab Win10 Pro, upgedatet von ´nem maroden Win7 x64 und bei mir treten ähnliche Probleme auf! Wenn ich auf dem Windows-Button mit der rmt Klicke öffnet sich manchmal nicht das Menü, auch kenne ich das Problem mit dem Win-Explorer dort mit der rmt öffnet sich auch nicht das Menü...


    Das passiert mir oft wenn ich die Kiste nicht Runterfahre sondern in den Energiesparmodus wechsel. Dann ein einfacher Reboot und alles läuft vorerst wieder.

    Nabend!


    Ich verwende 2 klassische Monitore mit 1280x1024 auf 60Hz. Wenn ich meinen Rechner am Fernseher anschliesse welcher ein 16:10 Format hat zocke ich auf 1920x1200 @50Hz. Das "Problem" ist bei diesem Format einfach, das viele Spiele ein 16:9 Format haben wollen und bei 16:10 mit BlackBars arbeiten... Und das find ich echt ätzend!! Wieso machen entwickler soetwas? Ob ich jetzt ein Widescreen mit 16:9 oder 16:10 verwende ist doch Wurscht - Es ist Widescreen...
    Hab grad geprüft, FarCry 4 ist z.B. ein solcher Spezi.


    Grüsse!


    P.S:
    Ich persönlich würde mich dennoch für 16:10 und 1920x1200 entscheiden, man hat einfach mehr vertikale Fläche zur Verfügung.