Hallo Besucher, der Thread wurde 7,9k mal aufgerufen und enthält 28 Antworten

letzter Beitrag von Mac Bacon am

Korrekturen zu deutschem C128-Handbuch

  • Supergute Sache! Gefällt mir.


    (Weiss man eigentlich ob das mit der englischen Ausgabe des Handbuchs ähnlich aussieht? Oder anders gefragt, ist das deutsche Handbuch ein Produkt von Commodore Deutschland oder eine Übersetzung? Ich könnte aus dem Stehgreif nicht beschwören, jemals ein englisches "Original" gesehen zu haben...)

    Müsste das hier sein.
    ftp://www.zimmers.net/pub/cbm/…28/C128D_System_Guide.pdf

  • Dabei baut Ihr auch noch neue ein.


    Seite 4-61 (FETCH)
    Das angegebene Beispiel entspricht nicht dem angegebenen Format. Außerdem beschreibt der letzte Absatz der Bemerkungen nicht FETCH, sondern STASH.


    Das ist eine Lüge, denn im Handbuch ist es richtig. Die Reienfolge der Eingabe ist immer die gleiche, lediglich die Transferrichtung ändert sich und damit nur der Optocode der in die Ramdisk geschrieben wird.


    In der Liste sind noch mehr richtige Angaben als Fehler angegeben.


    Wenn Du ein neues Handbuch willst, Ich hab das alte Handbuch Komplett mit Korrigierten Fehlern (zumindest einige) in Office Textform bei mir auf der Festplatte.

  • Zitat von Wiki


    Seite J-4
    Bei Adresse $fbe4 befindet sich eine weitere Tastaturtabelle, nämlich die vom deutschen 128er-Kernal ungenutzte CAPS-LOCK-Tabelle. Die US-Version des 128ers benutzt diese Tabelle, wenn die ASCII/DIN-Taste eingerastet ist - die hat dort nämlich die Bedeutung CAPS LOCK (ähnlich SHIFT LOCK, aber die Ziffern bleiben Ziffern).

    Wer hat den das Gerücht in die Welt gesetzt?


    Ich setze dagegen - und das kann jeder C128 Besitzer schnell ausprobieren:


    Der C128 hat ein wenig bekanntes Feature: Original Kenal. DIN ausgeschaltet. Reset. "POKE 2757, 128".
    Jetzt: Tastatur verhält sich wie in der US-Version - sprich: DIN-Taste wurde zum CAPS-LOCK... und die CAPS-LOCK-Tabelle wird doch genutzt.

  • Kritik und Korrekturen sind gern gesehen. Danke für das Replay zum Artikel.


    Mal schauen was Mac Bacon zu euren Postings sagt, ich selber kann in beiden Fällen nicht mitreden.



    Der Artikel ist erst einen guten Tag alt - Eventuelle Fehler werden noch ausgemerzt, besser geht immer.

  • Kleiner Nitpitck hier: https://www.c64-wiki.de/wiki/K…8.2F79_.28MID.24.28.29.29 das sollte wohl eher "Zuweisung" heißen (bzw wenn man es ganz genau nimmt: Ziel einer Zuweisung -- ist ja immer noch eine Funktion, eben eine, deren Resultat ein L-value darstellt).

    Das kann man durchaus so sehen, und wenn Du das im Wiki änderst, werde ich deshalb keinen Edit-War anfangen :D (Achtung, gleich kommt das "aber"):
    Aber: Wenn man das so "sauber" formuliert, könnte dabei der Eindruck entstehen, dass es auch "sauber" im Interpreter implementiert ist. Wenn "das Resultat von MID$ ein L-value darstellt", dann müsste man das Resultat ja auch als Zielvariable bei GET oder INPUT verwenden können, und das geht nicht: Unter der Haube wird in der Interpreterschleife bei dem Test auf die Minimal- und Maximalwerte für Anweisungstokens noch mal explizit auf das MID$-Token geprüft und ggfs. die neue Routine angesprungen. Diese neue Routine ist komplett unabhängig von der alten MID$-Funktionsroutine und erwartet immer ein Gleichheitszeichen hinter der schließenden Klammer. Das ist im Interpreter aber wieder ein ganz anderer Codepfad als das Gleichheitszeichen einer normalen Variablenzuweisung.
    ...und die normale Variablenzuweisung kann, dank "LET", in gewissem Sinne ja ebenfalls als Anweisung angesehen werden.


    Der langen Rede kurzer Sinn: Ich kann das, was Du sagst, nicht widerlegen. Aber der CBM-Basic-Interpreter ist an dieser Stelle so unsauber hingefrickelt, dass ich in Deiner vorgeschlagenen Wortwahl keinen wirklichen Vorteil sehe. Gäbe es eine offizielle Sprachdefinition wie für C, Java, etc., würde ich Dir sofort zustimmen.

    Das ist eine Lüge, denn im Handbuch ist es richtig.


    Lüge (Deutsch)
    Bedeutungen:
    [1] falsche Aussage, mit der andere bewusst getäuscht werden sollen

    Vorschlag zur Güte: Du lädst ein Foto Deiner Handbuchseite hoch, und ich lade ein Foto meiner Handbuchseite hoch, und dann schauen wir mal, was dabei heraus kommt.
    Irgendwo weiter oben im Thread wurde schon einmal diskutiert, dass bestimmte Fehler in späteren Handbuchversionen evtl. nicht mehr enthalten sind; genau aus diesem Grund enthalten die letzten Versionen der Fehlerliste ganz am Anfang die Information, auf welches C128-Handbuch sie sich beziehen.

    Wer hat den das Gerücht in die Welt gesetzt?


    Ich setze dagegen - und das kann jeder C128 Besitzer schnell ausprobieren:


    Der C128 hat ein wenig bekanntes Feature: Original Kenal. DIN ausgeschaltet. Reset. "POKE 2757, 128".
    Jetzt: Tastatur verhält sich wie in der US-Version - sprich: DIN-Taste wurde zum CAPS-LOCK... und die CAPS-LOCK-Tabelle wird doch genutzt.

    Danke für die Information, dass nicht nur die Tabelle, sondern auch noch Code mit deren Adresse im Kernal existiert. Dass man die Tabelle benutzen kann, sollte beim Lesen des Kapitels (bzw. der Anmerkung in der Liste) klar werden. Aber als offizielles Feature zur Nutzung der CAPS-LOCK-Taste sehe ich das nicht, und zwar aus einem ganz einfachen Grund: Wenn man auf einer Nicht-US-Maschine die Taste drückt, ändert sich ja auch immer der VIC-Zeichensatz. Der Code ist kein Feature, sondern eine nicht entfernte Altlast. :D



    Weitere Verbesserungsvorschläge zu der Liste können hier ja gerne diskutiert werden, aber noch schöner wäre es natürlich, wenn das gleich im Wiki passiert. ;)

  • Widerspruch: Es ist ein Feature. Mit den nationalen Patches hat Commodore in jener Adresse extra ein Bit eingeführt (Bit 7), welches es im US-Kernal nicht gibt: Sperre der Umschaltung Tastaturbelegung, so dass das US-Verhalten wieder zu Tage tritt. Man hat also extra Code hinzugefügt, um dieses Verhalten zu haben - und nicht Code nur nicht entfernt.


    Bin ich drauf gestoßen, als sich für Jiffydos geprüft habe, ob jene Tabelle wirklich nicht verwendet wird - was am Ende nicht bestätigbar war. Es stimmt allerdings, dass es schwer sein wird, eine Software zu finden, die das wirklich ausnutzt.

  • Aber: Wenn man das so "sauber" formuliert, könnte dabei der Eindruck entstehen, dass es auch "sauber" im Interpreter implementiert ist. [...]
    ...und die normale Variablenzuweisung kann, dank "LET", in gewissem Sinne ja ebenfalls als Anweisung angesehen werden.

    Ohje, was für ein Gefrickel ;) Klar, wenn es nur mit einem ganz bestimmten Operator beschrieben werden kann ist es nicht wirklich ein L-Value. Gestolpert bin ich eigentlich über das Wort "Anweisung" -- in einer imperativen Programmiersprache wie BASIC ist ja letztendlich alles eine Anweisung. Würde dann eher vorschlagen "als Ziel einer Zuweisung" zu schreiben ;)

  • Widerspruch: Es ist ein Feature. Mit den nationalen Patches hat Commodore in jener Adresse extra ein Bit eingeführt (Bit 7), welches es im US-Kernal nicht gibt: Sperre der Umschaltung Tastaturbelegung, so dass das US-Verhalten wieder zu Tage tritt. Man hat also extra Code hinzugefügt, um dieses Verhalten zu haben - und nicht Code nur nicht entfernt.

    Ok, überzeugt. Ich werde das "unbenutzt" irgendwie umformulieren.