Beiträge von Ter Roshak

    Um was gehts hier nochmal? :D


    ich hab Klavierspielen mit Comptine d'un autre été von Jan Tiersen gelernt.
    Hingesetzt, rangeklotzt und schwupps 6 Monate später gings dann auch :D


    Manche brauchen halt auch erstmal ne Herausforderung... und ich steh nunmal auf unmögliche aussichtslose Situationen und
    mach mir erstmal nen Kaffee.. Nur die Ruhe bewahren und halte dich nicht mit dem Noten Schmarrn auf.. am Ende kannste die zwar lesen
    aber dir nimmer merken.. und Pianisten brauchen keine Noten. Wenn du dann Mechanik und paar Stücke drauf hast kannste
    Noten lernen und evtl. auch bisschen Komponieren.. denn zu guter Musik gehört immer etwas Kreativität und die kommt nur
    wenn man sie benutzt !


    Achja hab ich schon gesagt : LERN ASSEMBLER !


    Tschöö :) und jetzt wieder zurück zu NEUER HARDWARE

    ich hab erstmal alles auf bogen trainiert .. also 7 tage 24/7 nur jagen gewesen ...
    seitdem oneshot(e) ich alles während eines rückwärtssaltos vom baum zwischen die augen, easy !
    :D .. ne im ernst ich war tagelang jagen seitdem treffe ich endlich was auf 3 meter entfernung :D

    JLCpcb und Mouser...
    pcb komm ich etwa auf 50-70 ct bei 50-100 stk.
    quarz ab 62 ct ohne MwSt
    stiftleisten 50 ohne MwSt
    dallas etwa 5-6 eur ohne MwSt
    n euro für die zelle <- !
    und der halter ist auch bei glaube 2 euro <- !


    dann noch versand für die jeweilige person...


    vergiss nicht die versandkosten für pcb und die parts extra.
    und den 2 euro dallas von aliexpress hab ich auch gesehen, aber dem vertrau ich nicht mein cmos ram an :D


    but as always YMMV ;)

    Wenn dos und das bios nicht denn gleichen Sektor 0 sehen dann schreibt dos zwar den mbr aber das bios findet ihn nicht mehr. Das passiert, wenn man Große Platten mit falschen / anderen chs werten einrichtet. Denn das bios reicht die Platte vll falsch durch ;) und ein direktzugriff (bios) findet dann nichts.


    Xtide wäre gut, ddo im Notfall jedoch bekommt man das nur schlecht wieder runter und bremst die Performance um gut 20-30%

    Warte warte !!!!


    in : lädt was wohin, 1. parameter ist das register in dem fall die niedriger (L) wertigen 8 bit vom A register (erstes) wohin etwas geladen wird
    61h also der 2. parameter ist die addresse in h = HEXADEZIMAL... in dem fall ist das die von warte mal.... IBM festgelegte adresse wo ein PC die equipment flags zurückhält


    Flags sind meistens Binary ... d.h. man zerlegt ein byte (8bit) in seine einzelteile und jede 0 bzw 1 schaltet funktionen ein oder aus.. 8 lichtschalter wenn du so willst.


    d.h. nach
    IN AL, 61h
    haben wir im register AL die aktuellen equipment flags "eingelesen" und können mit arbeiten


    XOR ist exclusive OR also ... 1 xor 1 = 0, 1 xor 0 = 1
    der erste parameter ist das erste byte bzw register in dem gearbeitet wird und der zweite ist das byte welches exclusive oder mit dem ersten genommen wird.
    d.h. wenn dort 00001100b steht (b steht für binary schreibweise) dann schaltet XOR an der 5. und 6. stelle von links im register AL die bits "um" also aus 1 wird 0 und aus 0 wird 1.


    nach
    XOR AL, 00001100b
    wurden also die bits in AL an 5. und 6. stelle von links "gedreht"


    so damit jetzt wieder was passiert muss dieses "byte" nur noch wieder an seine alte stelle geschrieben werden, wo sich ibm damals dachte .... usw etc.. pp...
    deshalb nutzen wir OUT, welches den 2. parameter ( sei es ein register oder ein fixer wert ) an die adresse des ersten parameter ( hier die zahl 61h also eine adresse ) schreibt.


    nach
    OUT 61h, AL
    wurde also unser geändertes equipment flag wieder zurück an die adressse 61h geschrieben.
    Dort wird dann vermutlich das BIOS im nächsten Zyklus sehen, dass die Register Flags für das System geändert wurden und seine weitere schwarte Magie anwenden
    um den Rechner schneller oder langsamer machen.


    Eigentlich ganz simpel...
    Man muss halt wissen wo was steht im System und dann heisst es eigentlich nur noch schritt für schritt ans ziel..


    Ich weiss schon die Jugend von heute programmiert eher wie folgt :


    System.GeileGeschäftsIdee.Ferrari.Weiber.AllesMeins.Drogen.Insolvenz.Suizid(Ich);
    - frei nach java&co -
    aber früher waren die Dinge noch etwas entspannter ;) und da wusste man dann noch wie sowas unter der haube funktioniert...
    immer wenn ich was mit assembler mache, habe ich das gefühl ne alte vespa zu zerlegen... und man wusste noch wie jedes teil läuft und funktioniert,
    anstelle sich zu wundern warum einem nach dem chiptuning die zylinder um die ohren fliegen...


    Da gabs mal sone Werbung, die ich gerne für heutige Informatiker adaptiere :


    Schreib dich nicht ab.... lern (x86) Assembler !


    VG, Chris

    Schon etwas alt... aber :D DosBox basiert in teilen auf Bochs und emuliert auch nur soviel wie nötig... natürlich kann man nicht alles exakt emulieren und auf
    viele technische details wird auch wegen Speed verzichtet (Ram interleaving, Cache interleaving, emulation Tag Ram, und tausend andere Dinge..)
    Letzten Ende ist es wichtig, dass die Software drin läuft, welche man zum laufen bringen möchte.


    In erster Linie setzt man sich dann zum Vorwand :
    - Alles muss drin laufen
    - Original HW hab ich noch nicht
    - Eigentlich hab ich garkeinen plan was ich überhaupt coden will


    Ergo erstmal wissen was man machen will, dann kann man über Abstraktion philosophieren,
    Aber ohne genaue Vorstellung die Eierlegendewollmilchsau von nem dosEmu erwarten ist irgendwie der falsche Ansatz.
    CrossPlattform Entwicklung ist immer ein Kompromiss - ihr wisst schon, das Ding wo nicht alles geht :D selbst auf nativer Hardware. Je mehr HW man unterstützen will, desto weniger Möglichkeiten bleiben am Ende übrig.
    Deshalb erst genau überlegen was laufen MUSS.
    Ich empfehle aber wie die Vorredner, ein günstiges System anzuschaffen und dann erstmal zu schauen was man damit anfangen kann/will/darf/muss, bevor man portiert.

    in al, 61h ; Read equipment flags
    xor al, 00001100b ; toggle speed
    out 61h, al ; Write new flags back


    das wärs gewesen ... der rest ist fürs beepen :D
    könnte man auch recht easy in nen qbasic program coden solang der kram ned im protected mode läuft

    Jo wolfig hat recht, einfach mit Variable angeben.
    Du kannst auch testen, ob ein verzeichnis als Argument #1 eingegeben wurde und ggf. die Variable mit nem Default wert füllen.
    Anschließend fragst du den User ob er sicher ist, dass nach #1 installiert werden soll ?!?!?!
    Und entweder mit Strg+C abbrechen oder mit Any Key die Installation fortsetzen.
    So kenne ich ess.
    Lass den Choice Schmarrn, die Choice Binary war nicht bei allen Versionen von Dos dabei usw... ;)

    Zwar schon lange her... aber ... TU DIR DAS NICHT AN :D
    benutz ne moderne Windows IDE z.B. VS Code oder gleich Visual Studio oder IntelliJ Idea mit C/C++ Plugin oder so.
    Debug den schmarrn nach allen regeln der Kunst mit den Lint Plugins und bau dir nen automatisiertes Test und Compilier Setup mit
    DosBox als Test Platform.
    Läuft zwar nicht alles 1:1, aber wenn du nicht grenzwertig authistisch veranlagt bist und alles in einer Klasse aufbaust und ohne Probleme den Überblick behälst,
    wird dir das die Arbeit und die Entwicklungszyklen drastisch vereinfachen.


    Für QBasic/Basic Anhänger gibt es auch das gute QB64... aber Achtung da gibt es teilweise ein paar Fallstricke.